home *** CD-ROM | disk | FTP | other *** search
/ Libris Britannia 4 / science library(b).zip / science library(b) / SCIENTIF / 1225.ZIP / README < prev   
Text File  |  1987-06-25  |  8KB  |  202 lines

  1.  
  2.                        LABCOAT - Version 2.0 - 6/87
  3.                           
  4.                 ( Laboratory Cost And Test Analysis ) 
  5.  
  6.             LABCOAT.PAS , EVALUATE.PAS & LIPID.PAS, written
  7.          in "User Friendly Pascal" (Together, about 140 K),
  8.          were compiled to provide a CHEAP and FUN Clinical Lab
  9.          helper for those with enough funds to have a PC, but not
  10.          enough to have the Omnipotent MegaBlodgett Clinical 
  11.          Laboratory Complete Management Information System.
  12.  
  13.             Included programs are README, which you are apparently
  14.          reading;  LABCOAT.COM , LIPID.COM & EVALUATE.COM, which 
  15.          are the executable programs ( just boot DOS, insert this 
  16.          disk, and enter LABCOAT);  and LABCOAT.PAS, LIPID.PAS & 
  17.          EVALUATE.PAS, the Turbo Pascal source code for each program.
  18.  
  19.             All coding was done on an IBM PC, using DOS 2.1 with
  20.          print routines tested on an Epson FX-85 and Okidata 182 (IBM).
  21.          There is a lot of calling for Text and Background Colors in
  22.          these programs - if you don't have a color card and monitor,
  23.          you will not be able to say, "It's poorly written, but their 
  24.          color's really nice".  Format a disk with your system on it
  25.          ("Format b:/s" sort of thing), then copy all the files on
  26.          this disk to it.  The program can even be started simply by
  27.          inserting the disk in drive A, and turning the computer on -
  28.          I have already written the Autoexec.Bat to boot up this way.
  29.  
  30.            There are some printer and keyboard controls inserted at 
  31.          various spots.  We toggle on the CAPS LOCK for example.  The
  32.          print control calls are really for IBM or IBM character set
  33.          compatable printers. These calls are mainly for borders and
  34.          emphasized text and form feeds.
  35.  
  36.            Fuzzy Logic is a close relative of the writers, and actually,
  37.          may have made some contributions to these programs.  To help
  38.          you appreciate him, We provided the source code and suggest
  39.          you review it.  Further tips on this will follow.
  40.  
  41.            If you want to change something, just get out Turbo 3.0 and
  42.          change it.  Good luck.  We're done with it - you can have it.
  43.          
  44.                  DOUG STANDING / GEN. MAX von BIRDFACE (RET.)
  45.                                943 ASTER CT
  46.                                SUNNYVALE, CA
  47.                                   94086
  48.  
  49.  
  50.  
  51.                                PAGE 1 OF 3
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.  
  64.            To check on the assumptions in calculations for the output 
  65.         on pages 1 - 4 of the testcost module, check the source code.
  66.         You can view and print the source in a number of ways:
  67.  
  68.            1. Load the file LABCOAT.PAS into your wordprocessor and 
  69.         either view it or print it out complete with page breaks, 
  70.         which is what we usually do.  Use condensed or "quality"
  71.         mode printer commands ( >= 12cpi ).
  72.  
  73.            2. Go to DOS, load the disk, turn your printer on and type
  74.         copy a:LABCOAT.PAS LPT1, then hit return.
  75.  
  76.            3. Load Turbo Pascal, if you have it ( and you Will need it
  77.         if you're going to alter this program ), then load the file
  78.         LABCOAT.PAS and use the editor to browse.
  79.  
  80.              ( The same steps work for LIPID.PAS & EVALUATE.PAS )
  81.        ( Printing all the Pascal Source is going to use 65 - 70 Pages )
  82.         
  83.           At page 2 of LABCOAT.PAS, we've listed all the variables
  84.         with {cryptic explanations as to use}.  Check those in both
  85.         real and integer sections.  Next, at about pg 7-8 of the source, 
  86.         we've set out the major group of calculations using those 
  87.         variables.  If you go on to the code segment marked "Print
  88.         Routine for GETIT", you can see a few more calculations and
  89.         also follow the use of all the calculations as they're applied 
  90.         to the 3 output pages that Procedure GETIT prints for you.
  91.                 Really, all the accounting math in GETIT is very 
  92.         simple stuff, as are the formulas in the procedure for the
  93.         Depreciation routine.  The Moving Average calculations are a 
  94.         little more "elegant", and the Quicksort in the Stats program 
  95.         is probably the most difficult to follow.  Basically, it only
  96.         exists to serve the Median Procedure.  You can refer to 
  97.         Herbert Schildt's Advanced Turbo Pascal, Osborne McGraw-Hill,
  98.         for the whole story on Quicksorts, etc.  We just grabbed the
  99.         idea, dressed it up and plugged it in.
  100.             The assumptions for the Lipid Profile Program are outlined
  101.         in the source code.  Basically, the program takes input of a
  102.         patient's demographics and Cholesterol, Trig, HDL values and
  103.         then calculates other values and flags them for age and sex
  104.         related normals.  The beginning values ( breakpoints ) for
  105.         both Moderate and High Cardiovascular Disease ( CVD ) Risk
  106.         levels are printed out to the right of the patient results
  107.         and any abnormal flags ( asterisks ).  The CVD risk break-
  108.         points are always calculated based on the age group and sex
  109.         of the patient.  
  110.  
  111.  
  112.  
  113.  
  114.                                 PAGE 2 OF 3
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.              Lipoprotein Phenotyping is also presented, in simple form,
  134.         when some breakpoint elevations are passed.  I think that it was
  135.         after writing this program that I decided it would be really
  136.         dishonorable to not include the source files on the disk.
  137.         At this point (1987) the meaning of lipoprotein levels is still
  138.         a controversial subject.  What's "normal" here may not be in
  139.         your setting.  Furthermore, the Lipid Research Council's 
  140.         Abel-Kendall reference method for Cholesterol measurement may
  141.         not be totally comparable to other standardization techniques.
  142.         Simply adopting the reference ranges without having the same
  143.         reference methodology and standarization may be misleading.
  144.         So what you get is the skeleton.  I put in what looked like
  145.         the current LRC reference ranges - you do what you want. 
  146.  
  147.        
  148.                            FATAL RUNTIME ERRORS
  149.  
  150.             You can enjoy "runtime" errors with program crashes if 
  151.         you do some of the following:
  152.                 1. Try to enter numbers larger than 32767 into the
  153.         Statistics routine.  The procedures to get the minimum and
  154.         maximum values use the Pascal TRUNC and ROUND functions,
  155.         which won't allow for entries over MAXINT (32767).
  156.                 2. Try using empty carriage returns to pass up 
  157.         requests for numerical input.  If division by zero occurs
  158.         anywhere in the calculations, you may crash. We attempted to
  159.         initialize all critical variables or to error trap those 
  160.         entries, but some get missed.  The other alternative is that
  161.         the system will insert whatever garbage is floating around the
  162.         memory when you use empty returns.  Birdface's suggestion is:
  163.         Put A Number In.
  164.                 3. You fail to turn on the printer when requested and
  165.         then also fail to respond to the "WRITE FAULT -" prompt by
  166.         switching the printer on and pressing the "R" key for RETRY.
  167.                 4. Attempting to enter letters when numeric data is
  168.         asked for.  For example, try answering the question, "Please
  169.         Enter Age:  ", by typing and entering "Forty One". You crash.
  170.  
  171.             Just try to remember, Birdface is only a poor little Parrot,
  172.         and he wrote all the error traps.  He also invented the names for
  173.         most of the variables in the code - they are not my fault - I don't
  174.         know how he chose MAXHEADROOM or SICKO  -  I only followed orders.
  175.  
  176.  
  177.  
  178.  
  179.                                 PAGE 3 OF 3
  180.  
  181.  
  182.  
  183.  
  184.  
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.  
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.